This invention relates to data communication systems, and more particularly, to a system for automatically detecting a change in connection of a network node to a multiport network switching system.
A multiport switch may be provided in a data communication network to enable data communication between multiple network nodes connected to various ports of the switch. A logical connection may be created between receive ports and transmit ports of the switch to forward received frames to appropriate destinations. Based on frame header information, a decision making engine selectively controls forwarding received frames to a destination station. To make the frame forwarding decision, the decision making engine searches a look-up address table that stores receive ports information.
In the address table, a network node address may be associated with a certain switch port. As a result, if a network node is disconnected from the original switch port and plugged into a new switch port, data addressed to the network node may still be forwarded to the original port instead of the new port.
Thus, it would be desirable to provide a network switch with a system for automatically detecting a change in network node connection.
The invention provides a novel system and method of automatically detecting a change in connection of a network node to a multiport network switching system having receive ports for receiving data packets from network nodes, and a decision making engine for controlling data forwarding. Data blocks representing received data packets are placed in data queues corresponding to the receive ports. The data queues are transferred to logic circuitry for processing in accordance with a predetermined algorithm. This processing includes the step of automatically detecting a change in network node connection as a result of disconnecting at least one of the network nodes from one of the receive ports and connecting the at least one of the network nodes to another receive port. The change in network node connection is detected based on a search of an address table having address information relating to the receive ports.
In a preferred embodiment, the address table is searched for an address entry having address information that matches corresponding address information of a data packet. For example, the address table may be searched for an address entry having a source address and VLAN address information that match a source address and VLAN address information of the data packet. A new address entry may be created if the address entry having matching address information is not found in the address table.
The detecting step may comprise determining whether receive port data written in the address entry having matching address information correspond to the receive port, from which the data packet is transferred. The address entry is automatically updated with new information, if the receive port data written in the address entry do not correspond to the receive port.
For example, the detecting step may comprise determining whether receive port data written in the address entry identify a receive port arranged in the same trunk as the receive port, from which the data packet is transferred. If not, the address entry is updated with information on the new receive port.
The address entry may contain a static bit provided to prevent the address entry from being deleted when the static bit is in a predetermined state. The detecting step may comprise checking the static bit to prevent the address entry from being updated if the static bit is in the predetermined state.
In accordance with another aspect of the invention, a multiport data communication system is provided for transferring data packets between ports. The data communication system comprises a plurality of receive ports for receiving data packets from a plurality of network nodes, and a decision making engine responsive to the received data packets for controlling transmission of the received data packets. The decision making engine includes a plurality of queuing devices corresponding to the plurality of receive ports for creating queues of data blocks representing the data packets received by the corresponding receive ports, an address table storage for storing an address table having address information relating to the plurality of the receive ports and logic circuitry responsive to the plurality of queuing devices for processing the data blocks in accordance with a prescribed algorithm to identify destination for each data packet. The logic circuitry comprises a detecting circuit for automatically detecting a change in connection between at least one of the plurality of network nodes and at least one of the plurality of receive ports, based on a search of the address table.